
package pyedmaribel;

/**
 * La clase Cafetera almacena la información de las máquinas de café.
 * <ul><li>De cápsulas</li><li>Expreso</li><li>moca</li><li>...</li></ul>
 * @author Angie Jolie
 * @author <h1><u><i>Prof. Pablo</i></u></h1>
 * @author Maribel
 * @version 2.1
 * @since 2.1
 */
 public  class Cafetera {
    
    //atributo
    private int nivel;
    private String tipo;
    
    /**
     * 
     * @return  Devuelve el tipo ("torrefacto","mezcla",...)
     * @see <a href ="http://docs.oracle.com/javase/7/docs/technotes/guides/javadoc/whatsnew-1.5.0.html"/> pagina de oracle
     * @see "Los devuelves"
     * @see String   <-- quiero que el programador cuando vea el metodo depTipo haga referencia a String (enlace documentación java)
     */
    
    
    // EjJavaDoc
   public String devTipo(){
        System.out.println("Comento");
        System.out.println("Esto es nuevo");
        System.out.println("Día 06/10/2103");
        return this.tipo;
        
        
    }

    //constructor
    /**
     * Por ejemplo:
     * <PRE>caft = new Cafetera(1000,"torrefacto")</PRE>
     * @param pNivel1 recibe el nivel de café que contiene la cafetera cuando se crea.
     * @param pTipo  recibe el tipo (torrefacto, mezcla ...) café presente en la cafetera.
     */
    Cafetera (int pNivel1, String pTipo){
        this.nivel = pNivel1;
        this.tipo = pTipo;
        
    }
    
    /**
    / Asigna un <b>tipo</b> en la clase Cafetera.
     * @param pTipo El nuevo tipo de la Cafetera.
     * @throws IllegalArgumentException si tipo es null, está vacío o contiene sólo espacios.
     */
   
 public   void asignaTipo (String pTipo){
        
   
        // si pTipo es igual a null o pTipo tenga espacios vacios, lanzaré una excepción
   
        if ((pTipo == null) || (pTipo.trim().isEmpty())) {
            
            throw new IllegalArgumentException("El tipo no puedo ser nulo o vacío.");
        }
        else
        {
        this.tipo = pTipo;
    }
}
 
    /**
     *
     * @param pCadena
     * @return
     */
    public String devCadMejorada(String pCadena){
     String rdo;
     rdo = pCadena;
     rdo = pCadena.trim();
     return rdo;
     }
    /**
     * Este método Asigna el nivel pasado por parámetro
     * @
     * @param pNivel 
     * @author Christian Falcó Control de versiones.
     */
    public void AsignaNivel(int pNivel)
    {
        this.nivel = pNivel;
    }
 }